package com.azxcrm.project.system.wap.service;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.azxcrm.common.utils.StringUtils;
import com.azxcrm.common.utils.security.ShiroUtils;
import com.azxcrm.project.system.wap.dao.ICustomerVisitRecordDao;
import com.azxcrm.project.system.wap.domain.CustomerVisitRecord;
import com.azxcrm.project.system.wap.service.ICustomerVisitRecordService;

/**
 * 客户线索拜访列 服务层实现
 * 
 * @author Dustyone
 * @date 2018-09-30
 */
@Service
public class CustomerVisitRecordServiceImpl implements ICustomerVisitRecordService 
{
	@Autowired
	private ICustomerVisitRecordDao customerVisitRecordDao;
	
	/**
     * 查询客户线索拜访列信息
     * 
     * @param recordId 客户线索拜访列ID
     * @return 客户线索拜访列信息
     */
	 @Override
	public CustomerVisitRecord selectCustomerVisitRecordById(Integer recordId)
	{
	    return customerVisitRecordDao.selectCustomerVisitRecordById(recordId);
	}
	
	/**
     * 查询客户线索拜访列列表
     * 
     * @param customerVisitRecord 客户线索拜访列信息
     * @return 客户线索拜访列集合
     */
	 @Override
	public List<CustomerVisitRecord> selectCustomerVisitRecordList(CustomerVisitRecord customerVisitRecord)
	{
	    return customerVisitRecordDao.selectCustomerVisitRecordList(customerVisitRecord);
	}
	
    /**
     * 新增客户线索拜访列
     * 
     * @param customerVisitRecord 客户线索拜访列信息
     * @return 结果
     */
	 @Override
	public int insertCustomerVisitRecord(CustomerVisitRecord customerVisitRecord)
	{
	    return customerVisitRecordDao.insertCustomerVisitRecord(customerVisitRecord);
	}
	
	/**
     * 修改客户线索拜访列
     * 
     * @param customerVisitRecord 客户线索拜访列信息
     * @return 结果
     */
	 @Override
	public int updateCustomerVisitRecord(CustomerVisitRecord customerVisitRecord)
	{
	    return customerVisitRecordDao.updateCustomerVisitRecord(customerVisitRecord);
	}
	
	/**
     * 保存客户线索拜访列
     * 
     * @param customerVisitRecord 客户线索拜访列信息
     * @return 结果
     */
	 @Override
	public int saveCustomerVisitRecord(CustomerVisitRecord customerVisitRecord)
	{
	    Integer recordId = customerVisitRecord.getRecordId();
		int rows = 0;
		if (StringUtils.isNotNull(recordId))
        {
		    rows = customerVisitRecordDao.updateCustomerVisitRecord(customerVisitRecord);
		}
		else
        {
			customerVisitRecord.setSalesUserId(ShiroUtils.getUserId().intValue());
		    rows = customerVisitRecordDao.insertCustomerVisitRecord(customerVisitRecord);
		}
		return rows;
	}
	
	/**
     * 删除客户线索拜访列信息
     * 
     * @param recordId 客户线索拜访列ID
     * @return 结果
     */
	 @Override
	public int deleteCustomerVisitRecordById(Integer recordId)
	{
	    return customerVisitRecordDao.deleteCustomerVisitRecordById(recordId);
	}
	
	/**
     * 批量删除客户线索拜访列对象
     * 
     * @param recordIds 需要删除的数据ID
     * @return 结果
     */
	 @Override
	public int batchDeleteCustomerVisitRecord(Integer[] recordIds)
	{
		return customerVisitRecordDao.batchDeleteCustomerVisitRecord(recordIds);
	}
	
}
